package com.newly.common.core.utils;

import cn.hutool.core.bean.BeanUtil;

import java.util.ArrayList;
import java.util.List;

/**
 * @anthor sbq
 * @date 2021/10/25 14:45
 */
public class CopyUtil {

    /**
     * 集合复制
     * @param ss 源Bean对象
     * @param tClass 目标Bean对象
     * @param ignoreProperties 不拷贝的的属性列表
     * @param <S>
     * @param <T>
     * @return
     */
    public static <S,T> List<T> copyList(List<S> ss,Class<T> tClass,String... ignoreProperties){

        List<T> list = new ArrayList<>();
        try {
            for (S s : ss){
                T t = tClass.newInstance();
                BeanUtil.copyProperties(s,t,ignoreProperties);
                list.add(t);
            }
        }catch (Exception e){
            e.printStackTrace();
        }

        return list;
    }
}
